var express=require('express');
var bodyParser=require('body-parser');
var conn=require('./conn.js');
var moment=require('moment');
moment().format();
var app=express();
app.use(express.static('./public'));
app.use(bodyParser.urlencoded({extended:false}));
var cors=require('cors');
app.use(cors());
//api 路由
//GET（SELECT）获取
app.get('/users',function(req,res){
    var sql='select `id`,`name`,`age`,`gender`,`phone`,`ctime` from `users`';
    conn().query(sql,function(err,ret){
        if(err!=null){
            res.status(404);//默认200
            res.send({
                status:404,
                data:null,//必须写，没有null
                message:'数据查询失败'
            });
        }else{
            res.status(200);//默认200
            res.send({
                status:200,
                data:ret,
                error:null
            });
        }
    })
})
//get id
app.get('/users/:id',function(req,res){
    var id=req.params.id;
    var sql='select `id`,`name`,`age`,`gender`,`phone`,`ctime` from `users` where `id`="'+id+'"';
    conn().query(sql,function(err,ret){
        if(err!=null){
            res.status(404);//默认200
            res.send({
                status:404,
                data:null,//必须写，没有null
                message:'数据查询失败'
            });
        }else{
            res.status(200);//默认200
            res.send({
                status:200,
                data:ret[0],
                error:null
            });
        }
    })
})

app.delete('/users/:id',function(req,res){
    var id=req.params.id;
    var sql='delete from `users` where `id`="'+id+'"';
    conn().query(sql,function(err,ret){
        if(err==null){
            res.status(200);
            res.send({
                status:200,
                error:null,
                data:ret
            })
        }else{
            res.status(400);
            res.send({
                status:400,
                error:'删除数据错误',
                data:null
            })
        }
    })
})

// POST（CREATE） 添加
app.post('/users',function(req,res){
    var name=req.body.name;
    var age=req.body.age;
    var gender=req.body.gender;
    var phone=req.body.phone;
    var date=moment().add('hours',8).format();
var sql='insert into `users` (`name`,`age`,`gender`,`phone`,`ctime`) values ("'+name+'","'+age+'","'+gender+'","'+phone+'","'+date+'")';
    conn().query(sql,function(err,ret){
        if(err!=null){
            res.status(404);//默认200
            res.send({
                status:404,
                data:null,
                error:'数据添加失败'
            });
        }else{
            res.status(200);//默认200
            res.send({
                status:200,
                data:ret,
                error:null
            });
        }
    })
})


// PUT（UPDATE）编辑
app.put('/users/:id',function(req,res){
    var id=req.params.id;
    var name=req.body.name;
    var age=req.body.age;
    var gender=req.body.gender;
    var phone=req.body.phone;
    var sql='update `users` set `name`="'+name+'",`age`="'+age+'",`gender`="'+gender+'",`phone`="'+phone+'" where `id`="'+id+'"';
    conn().query(sql,function(err,ret){
        if(err!=null){
            res.status(404);//默认200
            res.send({
                status:404,
                data:null,
                message:'数据更新失败'
            });
        }else{
            res.status(200);//默认200
            res.send({
                status:200,
                data:ret,
                message:'数据更新成功'
            });
        }
    })
})

app.listen(80);